(*****************************************************************************
 * Delphi Plug-in Framework (DPF)
 * Copyright (C) 2006-2007 Tao Yuan
 *
 * The contents of this file are subject to the Mozilla Public License
 * Version 1.1 (the "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the
 * License at http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
 * the specific language governing rights and limitations under the License.                                                               }
 *
 * The Initial Developer of the Original Code is Tao Yuan. Portions created by
 * Tao Yuan are Copyright (C) Tao Yuan (taoy.cn att gmail dott com)
 * All rights reserved.
 *****************************************************************************)
unit RDPlugin;

interface

uses
  Rcl,
  RDPluginService, RdClasses;

type
  TPlugin = class(TRdInterfacedObject, IPlugin)
  protected
    FPluginService: IPluginService;
    FPluginInfo: IPluginInfo;
    function getName: string; virtual; stdcall;
    procedure Initialize(APluginService: IPluginService; APluginInfo: IPluginInfo);
        virtual; stdcall;
    procedure Start; virtual; stdcall;
    procedure Stop; virtual; stdcall;
  end;

implementation

{ TPlugin }

function TPlugin.getName: string;
begin
  Result := Self.ClassName;
end;

procedure TPlugin.Initialize(APluginService: IPluginService; APluginInfo:
    IPluginInfo);
begin
  FPluginService := APluginService;
  FPluginInfo := APluginInfo
end;

procedure TPlugin.Start;
begin

end;

procedure TPlugin.Stop;
begin

end;

end.
